package cn.dakaqi.services;

import cn.dakaqi.entities.GroupRecruitVolunteer;
import cn.dakaqi.utils.exception.ServiceRuntimeException;
import org.springframework.data.domain.Page;

import java.util.List;

/**
 * Created by chunyang on 2016/4/19.
 */
public interface GroupRecruitVolunteerService
{
    void create(String param)throws ServiceRuntimeException;
    void save(GroupRecruitVolunteer groupRecruitVolunteer)throws ServiceRuntimeException;
    Page<GroupRecruitVolunteer> findAll(Long groupRecruitId, int pageNumber)throws ServiceRuntimeException;
    Page<GroupRecruitVolunteer> findByGroupRecruit(Long groupRecruitId, int status, int pageNumber)throws ServiceRuntimeException;
    List<GroupRecruitVolunteer> findVerfierByGroupRecruit(Long groupRecruitId, int verfierStatus)throws ServiceRuntimeException;
    List<GroupRecruitVolunteer> findVerfierByGroup(String groupCode, int verfierStatus, int pageNumber)throws ServiceRuntimeException;
    Page<GroupRecruitVolunteer> findStatusByGroup(String groupCode, int verfierStatus, int pageNumber)throws ServiceRuntimeException;
    void updateVerfierStatus(String param)throws ServiceRuntimeException;
    public void updateVerfierStatus(Long groupRecruitId, String memberCode, int status, String refuseCase)throws ServiceRuntimeException;
    GroupRecruitVolunteer findOne(Long groupRecruitVolunteerId)throws ServiceRuntimeException;
    void exit(String param)throws ServiceRuntimeException;
    void exit(GroupRecruitVolunteer groupRecruitVolunteer)throws ServiceRuntimeException;
    GroupRecruitVolunteer isApply(Long groupRecruitId, String memberCode)throws ServiceRuntimeException;
}
